import request from '@/config/axios'

// 分类管理 VO
export interface CategoryVO {
  id: number // 主键
  name: string // 分类名称
  type: number // 分类类型 0 所有分类通用 1 素材 
  parentId: number // 父节点
  categoryLevel: number // 类级别，便于快速查询和排序（如0代表一级分类，1代表二级分类，以此类推）
  description: string // 课程描述
  version: number // 行锁版本号
  deptId: number // 组归属部门（当前新增用户所在的部门）
}

// 分类管理 API
export const CategoryApi = {
  // 查询分类管理分页
  getCategoryPage: async (params: any) => {
    return await request.get({ url: `/course/category/page`, params })
  },

  // 查询分类管理详情
  getCategory: async (id: number) => {
    return await request.get({ url: `/course/category/get?id=` + id })
  },

  // 新增分类管理
  createCategory: async (data: CategoryVO) => {
    return await request.post({ url: `/course/category/create`, data })
  },

  // 修改分类管理
  updateCategory: async (data: CategoryVO) => {
    return await request.put({ url: `/course/category/update`, data })
  },

  // 删除分类管理
  deleteCategory: async (id: number) => {
    return await request.delete({ url: `/course/category/delete?id=` + id })
  },

  // 导出分类管理 Excel
  exportCategory: async (params) => {
    return await request.download({ url: `/course/category/export-excel`, params })
  },
  list: async () => {
    return await request.get({ url: `/course/category/list` })
  },
}
